iT邦幫忙

2023 iThome 鐵人賽

DAY 13
0
自我挑戰組

Python 編程精通之路系列 第 13

第十三天:列表推導式(List Comprehensions)

  • 分享至 

  • xImage
  •  

列表推導式是Python中一個強大且簡潔的特性,用於創建新的列表。它允許您在一行代碼中快速生成新的列表,而不需要額外的for迴圈。在這個教學中,我們將深入研究列表推導式。

基本的列表推導式:

以下是一個基本的列表推導式示例,它將一個列表中的每個數字加倍:

numbers = [1, 2, 3, 4, 5]
doubled_numbers = [x * 2 for x in numbers]
print(doubled_numbers)

這將生成一個新的列表doubled_numbers,其中包含numbers列表中每個數字的兩倍。

條件過濾:

您可以在列表推導式中添加條件,以過濾要包含在新列表中的元素。例如,以下示例僅保留偶數:

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers)

這將生成一個新的列表even_numbers,其中包含numbers列表中的偶數。

嵌套列表推導式:

您還可以在列表推導式中使用嵌套結構,例如列表中的列表。以下示例創建一個矩陣的平面列表:

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flat_matrix = [x for row in matrix for x in row]
print(flat_matrix)

這將生成一個新的列表flat_matrix,其中包含matrix中所有元素的平面列表。

列表推導式是Python中一個非常有用的技巧,它使列表的創建和轉換變得更加簡單和可讀。通過掌握這一特性,您可以更有效地處理各種列表操作。


上一篇
第十二天:字典(Dictionaries)
下一篇
第十四天:生成器(Generators)
系列文
Python 編程精通之路20
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言